#pragma once
#include "predef.h"

namespace Behavior
{
	namespace MouseEnums
	{
		enum MouseButton
		{
			Left = 0, 
			Right, 
			Middle,
			Button3, 
			Button4,	
			Button5, 
			Button6,	
			Button7
		};
	}

	struct MouseInputSensor
	{	
		virtual int GetAbsoluteX() const = 0;
		virtual int GetRelativeX() const = 0;

		virtual int GetAbsoluteY() const = 0;
		virtual int GetRelativeY() const = 0;

		virtual int GetAbsoluteZ() const = 0;
		virtual int GetRelativeZ() const = 0;

		virtual bool IsButtonDown(MouseEnums::MouseButton id) const = 0;
	};
}